/*
 * Canal.java
 *
 * Created on 2 de octubre de 2008, 06:35 PM
 *
 * To change this template, choose Tools | Options and locate the template under
 * the Source Creation and Management node. Right-click the template and choose
 * Open. You can then make changes to the template in the Source Editor.
 */
package com.nextel.project.cobranza.bean;

import pe.com.nextel.rms.DataInputStreamX;
import pe.com.nextel.rms.DataOutputStreamX;
import pe.com.nextel.rms.PersistenteX;
import java.io.IOException;
import org.kxml2.io.KXmlParser;
import org.kxml2.io.KXmlSerializer;
import pe.com.nextel.util.ArrayList;
import pe.com.nextel.util.Iterator;
import pe.com.nextel.util.List;
import pe.com.nextel.util.StringUtils;
/**
 *
 *  
 */
public class CobranzaBean extends PersistenteX {

    public static final String PAGO_EFECTIVO = "1";
    private String IdDocCobranza;
    private String codigo;
    private String serie;
    private String numeroDocumento;
    private String codigoCliente;
    private String codClienteStr;
    private String tipoDocumento;
    private String montoPagado;
    private String montoTotal;
    private String fechaVencimiento;
    private String saldo;
    
    

    public void persistir(DataOutputStreamX dataOutput, List list) throws IOException {

        dataOutput.writeInt(list.size());

        for (Iterator it = list.iterator(); it.hasNext();) {
            CobranzaBean bean = (CobranzaBean) it.next();
            bean.persistirItem(dataOutput);
        }
    }

    public void persistirItem(DataOutputStreamX dataOutput) throws IOException {

        dataOutput.writeShort(getPosicionID());
        dataOutput.writeString(StringUtils.stringNullToBlank(getIdDocCobranza()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getCodigo()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getSerie()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getNumeroDocumento()));

        dataOutput.writeString(StringUtils.stringNullToBlank(getTipoDocumento()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getMontoTotal()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getMontoPagado()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getCodigoCliente()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getFechaVencimiento()));

        dataOutput.writeString(StringUtils.stringNullToBlank(getCodClienteStr()));
        dataOutput.writeString(StringUtils.stringNullToBlank(getSaldo()));
        
    }

    public List recuperar(DataInputStreamX dataInput) throws IOException {
        List lista = new ArrayList();
        CobranzaBean bean = null;

        int cant = dataInput.readInt();
        for (int i = 0; i < cant; i++) {
            bean = new CobranzaBean();

            bean.recuperarItem(dataInput);

            lista.add(bean);
        }

        return lista;
    }

    public void recuperarItem(DataInputStreamX dataInput) throws IOException {
        setPosicionID(dataInput.readShort());
        setIdDocCobranza(dataInput.readString());
        setCodigo(dataInput.readString());
        setSerie(dataInput.readString());
        setNumeroDocumento(dataInput.readString());

        setTipoDocumento(dataInput.readString());
        setMontoTotal(dataInput.readString());
        setMontoPagado(dataInput.readString());
        setCodigoCliente(dataInput.readString());
        setFechaVencimiento(dataInput.readString());

        setCodClienteStr(dataInput.readString());
        setSaldo( dataInput.readString() );
        
 
    }

    public void writeXMLObject(KXmlSerializer writer) throws IOException {
    }

    public void readXMLObject(KXmlParser parser) throws IOException {

    }
    
    public void clear() {
    }

    public String getIdDocCobranza() {
        return IdDocCobranza;
    }

    public void setIdDocCobranza(String IdDocCobranza) {
        this.IdDocCobranza = IdDocCobranza;
    }

    public String getCodigo() {
        return codigo;
    }

    public void setCodigo(String codigo) {
        this.codigo = codigo;
    }

    public String getSerie() {
        return serie;
    }

    public void setSerie(String serie) {
        this.serie = serie;
    }

    public String getNumeroDocumento() {
        return numeroDocumento;
    }

    public void setNumeroDocumento(String numeroDocumento) {
        this.numeroDocumento = numeroDocumento;
    }

    public String getCodigoCliente() {
        return codigoCliente;
    }

    public void setCodigoCliente(String codigoCliente) {
        this.codigoCliente = codigoCliente;
    }

    public String getTipoDocumento() {
        return tipoDocumento;
    }

    public void setTipoDocumento(String tipoDocumento) {
        this.tipoDocumento = tipoDocumento;
    }

    public String getMontoPagado() {
        return montoPagado;
    }

    public void setMontoPagado(String montoPagado) {
        this.montoPagado = montoPagado;
    }

    public String getMontoTotal() {
        return montoTotal;
    }

    public void setMontoTotal(String montoTotal) {
        this.montoTotal = montoTotal;
    }

    public String getFechaVencimiento() {
        return fechaVencimiento;
    }

    public void setFechaVencimiento(String fechaVencimiento) {
        this.fechaVencimiento = fechaVencimiento;
    }

    public String getCodClienteStr() {
        return codClienteStr;
    }

    public void setCodClienteStr(String codClienteStr) {
        this.codClienteStr = codClienteStr;
    }

    public void setSaldo(String saldo) {
        this.saldo = saldo;
    }

    public String getSaldo() {
        return saldo;
    }
    
        
}
